go/types.Chan.elem (field)
21 uses
go/types (current package)
chan.go#L13: elem Type
chan.go#L28: return &Chan{dir: dir, elem: elem}
chan.go#L35: func (c *Chan) Elem() Type { return c.elem }
expr.go#L216: return u.(*Chan).elem
infer.go#L623: return w.isParameterized(t.elem)
infer.go#L776: w.typ(t.elem)
operand.go#L392: if Tc, ok := Tu.(*Chan); ok && Identical(Vc.elem, Tc.elem) {
predicates.go#L466: return x.dir == y.dir && c.identical(x.elem, y.elem, p)
range.go#L241: return typ.elem, nil, "", true
subst.go#L236: elem := subst.typ(t.elem)
subst.go#L237: if elem != t.elem {
subst.go#L238: return &Chan{dir: t.dir, elem: elem}
typestring.go#L275: if c, _ := t.elem.(*Chan); c != nil && c.dir == RecvOnly {
typestring.go#L289: w.typ(t.elem)
typexpr.go#L403: typ.elem = check.varType(e.Value)
under.go#L113: if !Identical(chu.elem, ch.elem) {
unify.go#L732: return (mode&exact == 0 || x.dir == y.dir) && u.nify(x.elem, y.elem, emode, p)